import { makeAutoObservable } from "mobx"
import { http } from '@/utils'
// 用户模块
class UserStore {
  // 定义数据
  userInfo = {}
  // 响应式
  constructor() {
    makeAutoObservable(this)
  }
  // actions
  // 获取用户信息
  getUserInfo = async () => {
    const { data } = await http.get('/user/profile')
    // console.log(data)
    // this.userInfo = data
    // console.log(this.userInfo)
    this.splitInfo(data)
  }
  // 拆分用户信息  解决方法：利用回调函数 或 将@observable数据 放在 另一个 @action 中
  splitInfo = (data) => {
    // console.log(data)
    this.userInfo = data
    // console.log(this.userInfo)
  }
  // 清除用户信息
  clearInfo = () => {
    this.userInfo = {}
  }
}
export default UserStore